Search systems that search for documents matching a search condition entered by the user from a set of stored documents are widely used. In many search systems, the user enters one or more keywords as a search condition. A search condition including two or more keywords often indicates a search for the logical AND of the two or more keywords. For example, the search systems search for documents containing all of two or more entered keywords. By increasing the number of keywords that are entered as a search condition, it is possible to narrow down documents that are retrieved.
For the user of such search systems, it is preferable that documents (search noise) not containing desired information are removed from the search results so as to sufficiently narrow down documents that are retrieved. However, it is difficult for the user to specify a sufficient number of keywords needed to obtain the desired search results from the start. Thus, the user often starts with a small number of keywords, and adds keywords based on the search results to gradually narrow down the documents.
When adding a keyword as a search condition, the user might have only a vague idea of the desired information, and might not be able to think of appropriate keywords. Thus, some search systems provide a feature (suggestion feature) that presents keywords related to the entered keyword and useful to refine the search results. If the user determines that one or more of the presented keywords represent the desired information, the user may add the one or more keywords to the search condition. With this assistance by the search systems, it is possible to reduce the time taken to refine the search results.
There has been proposed a refinement condition extraction apparatus that presents keywords useful to refine the search results to the user. The proposed refinement condition extraction apparatus assigns a degree of recommendation to each of a plurality of keywords that are selected in advance by a search service provider. Further, for each of the plurality of keywords, the refinement condition extraction apparatus counts the number of documents containing the keyword, and calculates the effectiveness of refinement which is inversely proportional to the number of documents. The refinement condition extraction apparatus calculates, for each of the plurality of keywords, a comprehensive evaluation value based on the degree of recommendation and the effectiveness of refinement. The refinement condition extraction apparatus presents keywords having high comprehensive evaluation values to a mobile terminal apparatus.
There has also been proposed a search apparatus that improves the efficiency of narrowing down data to be retrieved from a relationship database. The proposed search apparatus extracts, for each of a plurality of items contained in a table, types of values registered in the item. Then, the search apparatus calculates, for each type of value, the count of records containing the type of value. The search apparatus displays, on a display, information associating the items of the table, the types of values, and the record counts with each other. The user specifies one of the items and one of the types of values as a search condition, based on the displayed record counts. Then, the search apparatus searches the table to retrieve records in which the specified type of value is registered in the specified item.
See, for example, Japanese Laid-open Patent Publications No. 2003-58574 and No. 2009-238027.
Keywords that may be used for searching for documents are sometimes classified into a plurality of items (types of keywords) based on their meanings. For example, documents related to an information processing system may contain items such as hardware name, software name, version number, error code, error message, and so on. The search results of the documents related to the information processing system may be refined using one or more of these items.
Among the plurality of items, there may be an item for which some work needs to be performed by the user. That is, the user does not know any specific keywords of the item to be entered when starting a search, and therefore needs to perform work such as inspection to find out the keywords. This type of use of a search system may be called a search involving work. In the search involving work, the user needs to perform work upon adding a keyword as a search condition.
For example, assume that a failure occurs to an information processing system, and the user attempts to find documents related to the failure. At the point when the user notices the failure, the user often does not know the name of hardware and the name of software installed in the information processing system, the version number, error codes output by the information processing system, error messages, and so on. Thus, in order to find out the hardware name, software name, version number, and so on related to the failure, the user may look at the settings information stored outside the information processing system, the settings file stored in the information processing system, and so on, for example. Further, in order to find out the error code, the error message, and so on related to the failure, the user may look at the log file stored in the information processing system, for example.
It is preferable that the amount of work by the user that is associated with refinement of the search results is small. Therefore, it is preferable that the user knows which of a plurality of items is useful for the refinement of the search results before performing work. The user may preferentially perform work for finding out keywords of an item that is useful for the refinement, and may skip work for finding out keywords of items that are not useful.
However, a suggestion feature provided by the refinement condition extraction apparatus and the search apparatus described above presents specific individual keywords. Even when a certain keyword belonging to a certain item is useful to refine the search results, other keywords belonging to the same item are not always useful. Therefore, only with the keyword suggestion feature, it is difficult to determine an item useful to refine the search results, and hence it is difficult to determine which work is to be preferentially performed. Thus, the improvement in the efficiency of the search involving work is mostly dependent on the knowledge and experience of the user, and sufficient assistance is not provided by the search system.
For example, assume that a specific error code is presented to the user by a keyword suggestion feature. In response to this presentation, the user may inspect the failed information processing system to find out the actual error code. However, the error code obtained from the inspection often does not match the presented specific error code. Further, there are cases in which the presented specific error code is not versatile and therefore is useful to refine the search results, but the error code found from the inspection is highly versatile and therefore is not useful to refine the search results. In such a case, even if the error code found from the inspection is added to the search condition, the search results might not be sufficiently refined, so that the inspection performed for finding out the error code might come to nothing.